package com.appshelves.model.saveable;

public abstract class Changeable<T extends Changeable<T>> extends Saveable {

    protected ChangeableList<T> list;

    protected Changeable(ChangeableList<T> list) {
        setList(list);
    }

    protected void markListChanged() {
        list.markChanged();
    }

    void setList(ChangeableList<T> list) {
        this.list = list;
    }

    /// Serialization

    protected Changeable() {
    }

}
